package com.zhangxu.microservice.auth.dao.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zhangxu.microservice.auth.common.enums.SystemStatusEnum;
import lombok.Data;

import java.time.LocalDateTime;

@Data
@TableName("`system`")
public class SystemDO {

    /**
     * 主键 ID，自增
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 系统编码（唯一标识，如 employee, auth）
     */
    private String systemCode;

    /**
     * 系统名称（如 员工管理系统）
     */
    private String name;

    /**
     * 系统状态（NEW-新建，ENABLE-启用，DISABLE-禁用）
     */
    private SystemStatusEnum status;

    /**
     * 排序值（越小越靠前）
     */
    private Integer sort;

    /**
     * 系统负责人用户ID
     */
    private Long ownerId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间（自动填充）
     */
    private LocalDateTime createTime;

    /**
     * 更新时间（自动填充）
     */
    private LocalDateTime updateTime;

    /**
     * 删除时间戳（0-未删除，非0-删除时间戳）
     */
    private Long deleteTime;
}